In a development stage of an integrated circuit, an application program of a control circuit, such as a central processing unit (CPU) or a microprocessor, is written to a read-only memory (ROM). Subsequently, in a production stage, the control circuit is made with this program stored in the ROM. The ROM may be made by photolithographic masking so that data recorded are defined by a particular photolithographic mask configuration. Moreover, each memory cell is constituted by a transistor. Binary data memorized in this cell are defined by the fact that the transistor has been masked or not masked during an operation of implantation for enhancement or depletion. Then, the integrated circuit is tested. If the application of the integrated circuit is a rather complex one, errors are liable to occur in the program. To correct the errors, it may be necessary to make an integrated circuit again, which includes the control circuit and a new corrected program. This implies using a new set of masks, resulting in a relatively costly and lengthy operation.
In order to provide flexibility in designing an integrated circuit, a random access memory (RAM) is used to store the application program of a control circuit. Errors of the application program may be corrected in the RAM and then the corrected program may be sent to the ROM to finalize the integrated circuit. Using an extra RAM may save time and cost as compared to changing ROM configuration. However, the extra RAM may inevitably occupy certain space or area, which may increase the size of the integrated circuit. Moreover, extra peripheral circuits are needed to control or support the extra RAM, which complicates circuit design and power management.